In image reproduction systems there is a challenge of outputting color representations using a limited number of addressable color outputs. For example, in printing systems, a digital color image is often defined within a Red-Green-Blue (RGB) color space where pixels have a range of values for each color channel, e.g. in an 8-bit representation, each color channel may have one of 256 values or in a 24-bit representation, each color channel may have one of over 16 million values. However, a color printer may be equipped with three or four available colorants, such as Cyan-Magenta-Yellow-Key (e.g. Black) inks (CMYK). Each colorant may be deposited in a discrete manner at a print resolution pixel on a substrate, e.g. in a binary case, a colorant may or may not be deposited.
Halftoning is one technique to simulate a representation of a continuous tone image using a constrained rendering device. Halftoning involves the configuration of sets of small image elements, such as dots, so that from a distance a rendered color output resembles the original continuous tone image. Halftoning may be applied using a set of halftone screens. These screens may be defined by specifying a desired screen frequency and angle. In the past, halftone screens were physically constructed for use with offset printing presses. In modern digital printing presses, halftone screens may be generated electronically based on data defining the screen frequency and angle.